<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <div>111</div>
    <div>222</div>
    <div>333</div>
    <div>444</div>
    <div>555</div>

    <script>
        var oDivs = document.getElementsByTagName("div");

        // for(var i = 0; i < oDivs.length; i++) {
        //     var oDiv = oDivs[i];
        //     oDiv.onclick = function() {
        //         // 这里的i为全局作用域中的i
        //         alert(i); // 5
        //     }
        // }

        // 当for循环执行完毕后，i的值变为5


        // 解决方案
        for (var i = 0; i < oDivs.length; i++) {
            var oDiv = oDivs[i];
            // 闭包的解决方案
            oDiv.onclick = (function(j) {
                return function() {
                    alert(j);
                }
            })(i);
        }
    </script>
</body>
</html>